//
//  File.swift
//  Documentation
//
//  Created by Toj on 10/17/23.
//

import Foundation

FairPlay 流媒体部署
https://developer.apple.com/contact/request/fairplay-streaming/
https://learn.microsoft.com/zh-cn/azure/media-services/latest/drm-fairplay-license-overview

1. 从Apple获取凭据
https://developer.apple.com/contact/fps/
***
使用持有者账号

2. 生成证书签名请求
您可以使用 openssl 以生成公钥/私钥对和证书签名请求(CSR)

a. 生成密钥对.
openssl genrsa -aes256 -out privatekey.pem 1024

b.生成CSR.
openssl req -new -sha1 -key privatekey.pem -out certreq.csr
  -subj "/CN=SubjectName /OU=OrganizationalUnit /O=Organization /C=US"
***
此步骤的说明位于 FairPlay流部署包, 出于方便起见, 包含在此处.
如果您对流程的这一部分有任何疑问, 请查看 FairPlayCertificateCreation.pdf(在您的部署包中)

3. 通过Apple开发人员门户上传CSR。

开发团队的团队代理必须登录 developer.apple.com/account.
单击 Certificates, Identifiers & Profiles，然后选择 iOS, tvOS, watchOS 下拉菜单，然后单击 Certificates->Production 页面左侧。
单击 + 按钮来请求新证书。 选择 FairPlay Streaming Certificate 下的选项 Production.

此 添加iOS证书 对话框打开。
在 添加iOS证书，上传在步骤2.b.中生成的CSR文件，然后单击 Generate.

您的应用程序密钥(ASK)会显示在同一对话框中。
写下您的ASK ，并将其存储在安全位置。
在ASK中获取密钥以完成证书生成并单击 Continue.
确认已保存ASK后，单击 Generate 以继续。

注意
请务必保存ASK的副本并安全地保存它。 如果ASK遭到破坏，您将无法再使用FairPlay流媒体保护您的内容。 只有一(1)个ASK分配给您的团队。 将不再提供该值，并且您以后无法检索它。
下载FPS证书。

请确保将私钥（步骤2.a.）和公钥（在此步骤中下载的FPS证书）的备份副本保存在安全位置。
使用您的FairPlay凭据设置您的ExpressPlay帐户。

假设您在步骤3.h.中下载的证书名称是 fairplay.cer.
打开 fairplay.cer Apple密钥链访问实用程序的文件。
通过输入" fairplay”图标。
识别您公司的FairPlay证书。

您的公司名称应与Apple颁发的证书关联。
选择展开箭头并右键单击您的私钥以展开证书。
选择 Export “Your Company Name” 并保存 .p12 文件。

系统将要求您指定密码来保护此文件。 记下此密码，因为您将需要随凭据包发送此密码。
登录您的帐户 www.expressplay.com.
单击 DRM SERVICES 左上角，然后选择 FairPlay 选项卡。
将您的FairPlay凭据上传到ExpressPlay帐户。

创建一个包含ASK值（应为32个字符）的文本文件，例如： 1234567890abcdef1234567890abcdef)，并选择要上传的文件。
从Step 4.f.中选择要上载的PKCS12文件。
输入Step 4.f中的PKCS12文件密码。
单击“上载”按钮。
